<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>charCodeAt</title>
  <script>

    /**
     * charCodeAt(index)方法返回 0 到 65535 之间的整数，表示给定索引处的 UTF-16 代码单元
     * index: 一个大于等于 0，小于字符串长度的整数。如果不是一个数值，则默认为 0。
     * 返回值：指定 index 处字符的 UTF-16 代码单元值的一个数字；如果 index 超出范围，charCodeAt() 返回 NaN。
     */

    /**
     * UTF-16 编码单元匹配能用一个 UTF-16 编码单元表示的 Unicode 码点。
     * 如果 Unicode 码点不能用一个 UTF-16 编码单元表示（因为它的值大于0xFFFF），
     * 则所返回的编码单元会是这个码点代理对的第一个编码单元) 。
     */

    /**
     * Unicode 码点（code points）的范围从 0 到 1114111 (0x10FFFF）。开头的 128 个 Unicode 编码单元和 ASCII 字符编码一样。
     */

    let string = 'ABC';

    console.log(string.charCodeAt(0)); // 65 -> A 的字符编码
    console.log(string.charCodeAt(2)); // 67 -> C 的字符编码

    // 如果超出范围或者传递负数或返回NaN

  </script>
</head>

<body>

</body>

</html>